home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 001 / pibt40s1.arc / INITCOMM.MOD < prev    next >
Text File  |  1987-09-04  |  5KB  |  128 lines

  1. (*----------------------------------------------------------------------*)
  2. (*         Initialize_Communications --- Initialize communications      *)
  3. (*----------------------------------------------------------------------*)
  4.  
  5. PROCEDURE Initialize_Communications;
  6.  
  7. (*----------------------------------------------------------------------*)
  8. (*                                                                      *)
  9. (*     Procedure:  Initialize_Communications                            *)
  10. (*                                                                      *)
  11. (*     Purpose:    Initializes serial port and modem                    *)
  12. (*                                                                      *)
  13. (*     Calling Sequence:                                                *)
  14. (*                                                                      *)
  15. (*        Initialize_Communications                                     *)
  16. (*                                                                      *)
  17. (*----------------------------------------------------------------------*)
  18.  
  19. VAR
  20.    F      : FILE;
  21.    Text_F : TEXT;
  22.    Do_Scr : BOOLEAN;
  23.    Line   : AnyStr;
  24.    Ierr   : INTEGER;
  25.  
  26. BEGIN (* Initialize_Communications *)
  27.  
  28.                                    (* Initialize error handler. *)
  29.    ErrorPtr := OFS( Trap_Error );
  30.  
  31.                                    (* Get serial port initialized *)
  32.  
  33.    IF ( NOT Set_Params( TRUE , FALSE ) ) THEN
  34.       BEGIN
  35.          WRITELN('*** Sorry, can''t initialize communications.');
  36.          WRITELN('*** Program stops.');
  37.          Halt( 1 );
  38.       END;
  39.                                    (* Give Program Notice *)
  40.  
  41.    Scroll( 1, Max_Screen_Line, 1, Max_Screen_Col, 0,
  42.            Global_ForeGround_Color, Global_BackGround_Color );
  43.  
  44.    MoveToXY( 1 , 1 );
  45.  
  46.    WRITELN('PibTerm Version ', PibTerm_Version);
  47.    WRITELN(PibTerm_Date);
  48.    WRITELN('Copyright (c) 1985, 1986, 1987 by Philip R. Burns.');
  49.    WRITELN('Hit Alt-I for command list.');
  50.  
  51.                                    (* Indicate if debug mode on *)
  52.    IF Debug_Mode THEN
  53.       WRITELN('*** Debug mode on ***');
  54.  
  55.                                    (* Initialize Modem         *)
  56.    Initialize_Modem;
  57.                                    (* Initialize Printer      *)
  58.  
  59.    IF ( LENGTH( Printer_Setup ) > 0 ) THEN
  60.       WRITE( LST, Printer_Setup );
  61.  
  62.                                    (* Pick up script file name if any, *)
  63.                                    (* and convert to executable form.  *)
  64.  
  65.    IF ( Command_Script_File_Name <> '' ) THEN
  66.       BEGIN
  67.  
  68.          Do_Scr := FALSE;
  69.  
  70.          IF ( POS( '\' , Command_Script_File_Name ) = 0 ) AND
  71.             ( POS( ':' , Command_Script_File_Name ) = 0 ) THEN
  72.             Script_File_Name := Script_Path + Command_Script_File_Name
  73.          ELSE
  74.             Script_File_Name := Command_Script_File_Name;
  75.  
  76.          ASSIGN( F , Script_File_Name );
  77.             (*$I-*)
  78.          RESET( F );
  79.             (*$I+*)
  80.  
  81.          IF ( Int24Result = 0 ) THEN
  82.             BEGIN
  83.                   (*$I-*)
  84.                CLOSE( F );
  85.                   (*$I+*)
  86.                Do_Scr := TRUE;
  87.             END
  88.          ELSE
  89.             BEGIN
  90.                   (*$I-*)
  91.                CLOSE( F );
  92.                Ierr := Int24Result;
  93.                ASSIGN( Text_F , Script_Path + 'PIBTERM.SCL' );
  94.                RESET ( Text_F );
  95.                   (*$I+*)
  96.                IF ( Int24Result = 0 ) THEN
  97.                   BEGIN
  98.                      READLN( Text_F , Line );
  99.                      Line := Line + ' ';
  100.                      Do_Scr := ( UpperCase( Substr( Line, 1, 10 ) ) = '==PIBTERM ' );
  101.                   END;
  102.                   (*$I-*)
  103.                CLOSE( Text_F );
  104.                Ierr := Int24Result;
  105.                   (*$I+*)
  106.             END;
  107.  
  108.          IF Do_Scr THEN
  109.             IF MyLoadOverlay( 0 , PT4SCRI, 'PT4SCRI.CHN' ) THEN
  110.                Process_Script( Script_File_Name , 'E' );
  111.  
  112.       END;
  113. {
  114.    IF Debug_Mode THEN
  115.       IF TimeSharingActive THEN
  116.          BEGIN
  117.             WRITELN;
  118.             WRITE('Multitasker: ');
  119.             CASE MultiTasker OF
  120.                DoubleDos: WRITELN('DoubleDos');
  121.                DesqView:  WRITELN('DesqView');
  122.                TopView:   WRITELN('TopView');
  123.                TaskView:  WRITELN('TaskView');
  124.                ELSE       WRITELN('Other');
  125.             END (* CASE *);
  126.          END;
  127. }
  128. END   (* Initialize_Communications *);